CygNet device template files must adhere to standard XML rules, CygNet base-class rules, proprietary and open protocol rules, and rules specific to the device to which a template applies. Since it is impossible to protect against every possible mistake that could be made while editing a device template file, CygNet provides several ways to ensure that a device template file is valid.
CygNet provides the following validation aids:
Despite the numerous ways CygNet validates device template files, there is no way to protect against all possible validation errors and there is no way to protect against illogical or impractical uses of valid components. Use care when editing a device template file and adhere to documented CygNet guidelines.
Example
The following dialog box shows the kind of error you might see upon attempting to install an invalid device template file directly to the DDS. Efforts are made to provide informative error messages.
The following table provides numerous examples of things that must be true of a template in order for it to be considered valid by CygNet. This list is not exhaustive. See topics in Elements and Attributes for details.
| If this is true of your template... | ...it's valid |
|---|---|
| The device template file follows standard XML validation rules. |
|
| Attribute values never contain leading or trailing white space. |
|
The deviceType attribute value in the deviceDefinition element follows these rules:
|
|
| The category attribute value in the deviceDefinition element is numeric. |
|
| The eieType, mfg, model, and desc attributes in the deviceDefinition element are less than or equal to 32 characters in length. |
|
| There is at least one data group in a dataGroups element. |
|
| There are no duplicate data groups in a dataGroups element. |
|
| All legal attributes are formatted in a valid manner in the dataGroups element. |
|
| The niceName attribute in the DataGroup element is less than or equal to 32 characters in length. |
|
| Reference operations use required attributes and operators to perform an intended operation. |
|
| No duplicate data group element IDs (DEID) are in a single data group. |
|
| All data group element IDs (DEID) are less than or equal to 10 characters in length. |
|
| All legal attributes are formatted in a valid manner in the DataGroupElement element. |
|
| The UISCommandName element name is less than or equal to 10 characters in length. |
|
| There are no duplicate data groups in a defDataGroups element. |
|